In the current Internet, the typical protocol supporting multihoming is the Level 3 Multihoming Shim Protocol for IPv6 (Shim6) at
http://www.ietf.org/html.charters/shim6-charter html. It is developed by the Internet Engineering Task Force (IETF).
In Shim6, a shim layer providing a stable Upper Layer Identifier (ULID) for the upper protocol is added to the IP layer of the protocol stack in the terminal. When different IP addresses are selected to fulfill multihoming demand in the IP layer, the stability of the upper protocols is guaranteed by the uniform ULID.
However, since the Shim6 is a terminal based multihoming solution, it has several drawbacks: 1) the protocol stack of a terminal must be modified to fulfill multihoming requirements. Because the amount and categories of the multihomed terminals are very large, it will cost too much time to modify the protocol stacks of all terminals. 2) All terminals have to cooperate with each other to support multihoming, which will waste the link resources. In particular, the messages transmitting among the terminals will make the limited radio link resources more scarcely when the wireless links are used to connect the terminal with the network. 3) The terminal based multihoming scheme also brings negative impacts on the ISPs so that the behaviors of the terminal cannot be controlled and managed. Thus, for those ISPs, the difficulty to maintain the network and the cost to operate the network are all increased.